#include<stdio.h>
#include <unistd.h>
#include <stdlib.h>

#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>

#define FIFO_NAME "/home/china/2515F"

int main()
{
    //创建管道
    int ret = mkfifo(FIFO_NAME,0664);
    if (ret == -1 && errno != EEXIST) // 不是因为文件存在而报错
    {
        perror("mkfifo failed");
        return -1;
    }
    //打开管道
    int fd;
    if ((fd = open(FIFO_NAME, O_RDONLY )) == -1)
    {
        perror("open fifo failed");
        return -1;
    }
    printf("open success!\n");
    //读取管道文件数据
    int i = 5;
    while(i--)
    {
        char buf[256] = {0};
        int len = read(fd,buf,256);
        printf("len = %d,data = %s\n",len,buf);
    }
    //关闭管道
    close(fd);
    return 0;
}